This invention relates generally to virtual databases, and in particular to managing data stored in virtual partitions in a virtual database independent of the remaining data of the virtual database.
Databases store data that is critical to an organization and thus form an important part of an organization's information technology infrastructure. As the information available in an organization grows, so does the complexity of the infrastructure required to manage the databases that store the information. The increased complexity of the infrastructure increases the resources required to manage the databases and the applications that depend on the databases. These increased costs may include the costs associated with hardware for managing the databases as well as the costs associated with additional personnel needed to maintain the hardware.
Maintaining an instance of a database is associated with expenses for the organization. Therefore, organizations avoid maintaining a large number of instances of databases if possible. Vendors of database software often charge license fees per instance of databases used. Therefore, an organization typically has to pay higher license fees for maintaining more instances of databases. Furthermore, the organization may have to use additional hardware and software resources to manage the database instances. Also, having a large number of instances of databases requires more IT (information technology) resources/personnel to manage the databases. Therefore, enterprises prefer to use an instance of database for multiple purposes if possible, for example, for storing data of multiple applications.
However, using the same instance of database for multiple purposes has other disadvantages. Maintenance of an instance of a database typically depends on the applications using the database. For example, if the data stored by application becomes corrupted, a previous consistent state of the database needs to be restored. However, if multiple applications use the same instance of the database, the state of the remaining applications may be affected by the restore operation. As a result, the data of applications that are functioning properly may also get restored to a previous state. Accordingly, maintaining multiple applications on a single database has its own challenges. Conventional techniques for maintaining databases are often inadequate for managing storage of data of multiple applications on the same instance of database.